package com.aidex.biz.domain;

import com.aidex.common.annotation.Excel;
import com.aidex.common.core.domain.BaseEntity;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;

/**
 * 小程序用户信息对象 biz_user_info
 *
 * @author sean
 * @email 2074844820@qq.com
 * @date 2022-09-21
 */
@Data
public class UserInfo extends BaseEntity<UserInfo> {
    private static final long serialVersionUID = 1L;


    /**
     * 真实姓名
     */
    @Excel(name = "真实姓名")
    private String name;

    /**
     * 昵称
     */
    @Excel(name = "昵称")
    private String nikeName;

    /**
     * 电话
     */
    @Excel(name = "电话")
    private String phone;

    /**
     * 是否实名 0 未实名 已实名
     */
    private Integer isShiming;

    /**
     * openid
     */
    private String openid;

    /**
     * 头像
     */
    private String avatar;

    /**
     * 余额
     */
    private BigDecimal account;

    /**
     * 能量值
     */
    private BigDecimal energycount;

    /**
     * 推荐人
     */
    private String tuijianUser;

    /**
     * 排序
     */
    private String sort;


    /**
     * 状态（0正常 1 停用）
     */
    private String status;
    private String type;  // 用户类型 0 普通用户  1 回收员
    private String userInfoId;

    private String area; //    区域
    private String province; // 省份
    private String city; // 城市
    private String street; // 街道
    private String streetNumber;// 街道编号
    private String crossroad;// 知名地方

    private String lat;
    private String lng;

    private String idCard;
    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setNikeName(String nikeName) {
        this.nikeName = nikeName;
    }

    public String getNikeName() {
        return nikeName;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getPhone() {
        return phone;
    }

    public void setIsShiming(Integer isShiming) {
        this.isShiming = isShiming;
    }

    public Integer getIsShiming() {
        return isShiming;
    }

    public void setOpenid(String openid) {
        this.openid = openid;
    }

    public String getOpenid() {
        return openid;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    public String getAvatar() {
        return avatar;
    }

    public void setAccount(BigDecimal account) {
        this.account = account;
    }

    public BigDecimal getAccount() {
        return account;
    }

    public void setEnergycount(BigDecimal energycount) {
        this.energycount = energycount;
    }

    public BigDecimal getEnergycount() {
        return energycount;
    }

    public void setTuijianUser(String tuijianUser) {
        this.tuijianUser = tuijianUser;
    }

    public String getTuijianUser() {
        return tuijianUser;
    }

    public void setSort(String sort) {
        this.sort = sort;
    }

    public String getSort() {
        return sort;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }


    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("userName", getUserName()).append(
                "userId", getUserId()).append("deptId", getDeptId()).append("companyId", getCompanyId()).append("name"
                , getName()).append("nikeName", getNikeName()).append("phone", getPhone()).append("isShiming",
                getIsShiming()).append("openid", getOpenid()).append("avatar", getAvatar()).append("account",
                getAccount()).append("energycount", getEnergycount()).append("tuijianUser", getTuijianUser()).append(
                        "sort", getSort()).append("status", getStatus()).append("remark", getRemark()).append("id",
                getId()).append("createBy", getCreateBy()).append("createDept", getCreateDept()).append("createTime",
                getCreateTime()).append("updateBy", getUpdateBy()).append("updateTime", getUpdateTime()).append(
                        "updateIp", getUpdateIp()).append("version", getVersion()).append("delFlag", getDelFlag()).toString();
    }
}
